package com.eclipse.e0114_java8.课堂案列;

import java.util.Arrays;
import java.util.List;
import java.util.function.Consumer;

public class Test1_四种遍历方法 {
	// 通过Arrays的asList静态方法 给list放入值 参数是可变参数
	static List<String> list = Arrays.asList("1", "2", "3");

	public static void main(String[] args) {
//		// 1: 迭代器
//		System.out.println("-----------迭代器------------");
//		Iterator<String> iterator = list.iterator();
//		while (iterator.hasNext()) {
//			System.out.println(iterator.next());
//		}
//
//		// 2:for
//		System.out.println("------------for-----------");
//		for (int i = 0; i < list.size(); i++) {
//			System.out.println(list.get(i));
//
//		}
//
//		// 3:增强for
//		System.out.println("-------------增强for----------");
//		for (String temp : list) {
//			System.out.println(temp);
//		}
//
//		// 4：forEach方法迭代
//		System.out.println("--------------forEach方法迭代---------");
//		list.forEach(new Consumer<String>() {
//			// 实现Consumer接口的accept方法
//			public void accept(String t) {
//				System.out.println(t);
//			}
//		});
//		list.forEach(t -> System.out.println(t));

		// lambda
		Consumer<String> consumer = t -> System.out.println(t); //t是String类型的参数名
		list.forEach(consumer);

		// 匿名内部类
		consumer = new Consumer<String>() {
			public void accept(String t) {
				System.out.println(t);
			}
		};
		list.forEach(consumer);
		
	}
}
